﻿//++
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
// Module Name:
//
//  SubscriptionFailedEventArgs.cs
//    
// Abstract:
//
//  This module implements the SubscriptionFailedEventArgs class. 
//
//--
using System;
using System.Diagnostics;

using Microsoft.OfficeCommunicationsServer.Applications.Common;

namespace Microsoft.EnhancedReminders.Scheduler
{
    /// <summary>
    /// Event args for the SubscriptionFailed event.
    /// </summary>
    internal sealed class SubscriptionFailedEventArgs : EventArgs
    {
        // ID of the search folder for which the subscription failed
        private string _id;

        // Logging context
        private Context _context;

        /// <summary>
        /// ctor
        /// </summary>
        /// <param name="context">Logging context</param>
        /// <param name="id">ID of the search folder for which the subscription failed</param>
        internal SubscriptionFailedEventArgs(Context context, string id)
        {
            Debug.Assert(id != null, "id != null");
            _context = context;
            _id = id;
        }

        /// <summary>
        /// Logging context.
        /// </summary>
        internal Context Context
        {
            get
            {
                return _context;
            }
        }

        /// <summary>
        /// ID of the search folder for which the subscription failed.
        /// </summary>
        internal string Id
        {
            get
            {
                return _id;
            }
        }
    }
}
